package com.woniu.dao.homePage;

import cn.hutool.db.sql.Order;
import com.woniu.entity.Orders;
import com.woniu.entity.OrdersDetails;
import com.woniu.entity.Sorting;
import com.woniu.entity.WorkUser;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * @author 陈乙嘉
 * @data 2023/3/11 14:10
 */
public interface SortingAppDao {

    Integer sorterLogin(@Param("phone") String phone,
                        @Param("password") String password);

    Integer getSorterIdByPhone(@Param("phone") String phone);

    //计算分拣人员的业绩
    List<Integer> getSortingOrderCount(@Param("sorterId") Integer sorterId,
                                 @Param("sortingBeginTime") String sortingBeginTime,
                                 @Param("sortingEndTime") String sortingEndTime);

    //根据各种条件查找订单
    List<Order> findOrdersByConditions(@Param("sorterId") Integer sorterId,
                                       @Param("status") Integer status);

    //改变订单状态，由待分拣到待配送
    void updateOrderStatus(Orders orders);

    //查询商品明细
    List<OrdersDetails> findOrdersDetailsByOrderId(@Param("orderId") String orderId);

    //接单
    void updateSorterId(Orders orders);

    //根据手机号查询工作人员所有信息
    WorkUser queryWorkUser(String phone);

    //根据手机号修改工作人员密码
    void updatePasswordByPhone(String phone,String password);

    //根据分拣员id 和订单号查询所有分拣信息
    Sorting findSorting(@Param("orderId") String orderId,@Param("sorterId") Integer sorterId);
    //插入分拣表信息
    void insertSorting(Sorting sorting);

    //当分拣已完成修改分拣表状态
    void updateSorting(@Param("state")Integer state,@Param("orderId") String orderId,@Param("userId") Integer userId);







}
